// 引入封装好的角色列表接口
import {
    goodsList,goodsCount
} from '../../../request/api'
const state = {
    goodsList: [],
    size:2, // 每页条数
    page:1, // 页码
    count:0  //总数
}

const getters = {
    // 列表
    getGoodsList(state) {
        return state.goodsList
    },
    // 总数
    getGoodsCount(state){
        return state.count
    },
    // 每页条数
    getSize(state){
        return state.size
    }
}

const mutations = {
    // 列表
    ROLE_LIST(state, payload) {
        state.goodsList = payload
    },
    // 总数
    REQ_COUNT(state,payload){
        state.count = payload
    },
    // 页码
    REQ_PAGE(state,payload){
        state.page = payload
    }
}

const actions = {
    // 列表
    getGoodsListAction(context) {
        // 调用列表接口
        goodsList({
            size:context.state.size,
            page:context.state.page,
        })
            .then(res => {
                console.log(res, '商品管理列表接口');
                if (res.code == 200) {
                    let list = res.list ? res.list : []
                    context.commit('ROLE_LIST', list)
                    if(context.state.page!=1 && list.length == 0){
                        context.dispatch('getGoodsPageAction',context.state.page-1)
                    }
                }
            })
    },
    // 总数
    getGoodsCountAction({commit}){
        goodsCount().then(res=>{
            console.log(res,'商品管理总数');
            if(res.code == 200){
                commit('REQ_COUNT',res.list[0].total)
            }
        })
    },
    // 切换页码
    getGoodsPageAction(context,payload){
        // 每次切换页面的时候，修改page
        context.commit('REQ_PAGE',payload)
        // 重新调用列表
        context.dispatch('getGoodsListAction')
    }
}

export default {
    state,
    getters,
    mutations,
    actions,
    // 命名空间
    namespaced: true
}